/*
 * GuardCommand.h
 *
 *  Created on: Oct 14, 2008
 *      Author: Ryan
 */

#ifndef GUARDCOMMAND_H_
#define GUARDCOMMAND_H_

#include "Command.h"
#include "../Units/Unit.h"

namespace OOInterface
{

class GuardCommand: public OOInterface::Command
{
public:
	GuardCommand( ConstUnitPtr unit ): _guardedUnit( unit ) {}
	virtual ~GuardCommand() {}

	inline ConstUnitPtr getGuardedUnit() const { return _guardedUnit; }
	inline void setGuardedUnit( ConstUnitPtr unit ) { _guardedUnit = unit; }

	virtual std::string toString() const { return std::string("GuardCommand"); }

private:
	ConstUnitPtr _guardedUnit;
};

}

#endif /* GUARDCOMMAND_H_ */
